home *** CD-ROM | disk | FTP | other *** search
/ Network Supervisor's Toolkit / Network Supervisor's Toolkit.iso / menus / mcmenu / stufkeyp.asm < prev    next >
Assembly Source File  |  1996-07-10  |  1KB  |  43 lines

  1. CODE     SEGMENT BYTE PUBLIC
  2.           ASSUME    CS:CODE
  3.  
  4. ; STUFKEYP.ASM  Pascal CALLED KEYBOARD STUFFER
  5. ; Keyboard buffer stuffer to avoid use of pipes
  6. ; Nov 20,1991   Ver 0.0
  7. ; Tony Bigras
  8. ; Called
  9. ;       PROCEDURE stufkeyp(codekey: INTEGER);
  10. ;       codekey has scan code in hi order byte and ascii key in low order
  11.  
  12. BUFSTART  EQU 1EH ;abs
  13. BUFEND    EQU 3EH ;abs
  14. BIOSDATA  EQU 40H
  15. BUFHEAD   EQU 1AH ;ptr
  16. BUFTAIL   EQU 1CH ;ptr
  17.  
  18.           PUBLIC STUFKEYP
  19. STUFKEYP  PROC   NEAR
  20.  
  21.           MOV  BX,SP
  22.           MOV  CX,SS:[BX+2]   ; Get codekey
  23.           MOV    AX,BIOSDATA
  24.           MOV    ES,AX
  25.           CLI
  26.           MOV    BX,WORD PTR ES:[BUFTAIL]
  27.           MOV    SI,BX
  28.           INC    BX
  29.           INC    BX
  30.           CMP    BX,BUFEND
  31.           JB     K1
  32.           MOV    BX,BUFSTART
  33. K1:       CMP    BX,ES:[BUFHEAD]
  34.           JE     K2
  35.           MOV    ES:[SI],CX
  36.           MOV    WORD PTR ES:[BUFTAIL],BX
  37. K2:       STI
  38.           RET    2
  39. stufkeyp ENDP
  40.  
  41. CODE      ENDS
  42.           END
  43.